The present invention generally relates to holographic data storage, and more specifically to a method of encoding data for storage within a holographic storage medium.
Holographic data storage provides a promising technique for rapid and efficient data storage and retrieval. In holographic data storage systems, binary data is stored in a volume of a holographic storage medium. Holographic storage media contrast with, for example, conventional magnetic disks, where the data is stored on the surface of the storage material.
In a holographic storage system, the signal beam is generally monochromatic, and data is stored by passing a monochromatic signal beam through a spatial light modulator having transparent and opaque pixels representing data comprising a data page. The signal beam is then incident on the holographic storage. A reference beam is also incident upon the storage medium and interferes with the signal beam inside the storage medium. The index of refraction of the storage medium is perturbed by the resulting interference pattern, and a hologram representing a page of data is thereby stored.
The transparent and opaque pixels of the spatial light modulator correspond to xe2x80x9cchannel bits,xe2x80x9d the bits that are actually stored in the storage medium. The transparent portions correspond to xe2x80x9conxe2x80x9d channel bits, or binary 1""s; opaque portions correspond to xe2x80x9coffxe2x80x9d channel bits, or binary 0""s. The channel bits are typically an encoded version of the original binary bits to be stored in the medium.
To retrieve data from a holographic storage medium, the reference beam is incident upon the storage medium. The reference beam is partially diffracted by the perturbations in the index of refraction that correspond to the stored data. The diffracted portion of the reference beam is the image beam, which carries a holographic image of the data page stored.
More than one page of data may be holographically stored in the same volume of a holographic storage medium using well known multiplexing techniques. These techniques include angle multiplexing, where the reference beam has a different angle of incidence upon the storage medium for each page, and wavelength multiplexing, where the reference beam has a different wavelength for each page.
A primary difficulty with holographic storage systems is that the reading and writing signal-to-noise ratios worsen as the amount of data stored in the storage medium increases. A poor signal-to-noise ratio during reading results from the fact that the address beam or the image beam, or both, pass through regions of the storage medium where data that is not being accessed has been stored. These regions alter the signal beam or the address beam, or both.
A similar problem occurs during writing. After an initial amount of data is stored, future data storage requires that the signal beam passes through regions of the storage medium that already contain data. The signal beam is thereby partially scattered, resulting in a poor signal-to-noise ratio for writing data. The reference beam may also be perturbed by previously stored data during the writing process.
The more xe2x80x9conxe2x80x9d channel bits that are stored in the storage medium, the worse the signal-to-noise ratios become, since it is the xe2x80x9conxe2x80x9d channel bits that cause the unwanted dispersion of the light beams. Generally, a large number of xe2x80x9conxe2x80x9d channel bits are usually stored in the storage medium. For balanced selection of channel bits, half of the channel bits are on, and half are off.
One solution to the problem is for the channel bits to contain an encoded version of the original binary data to be stored, wherein the code is selected to improve the signal-to-noise ratios. U.S. Pat. No. 5,450,218 by Heanue et al. discloses a method of encoding data that involves storing reference pixels as well as data pixels in the holographic medium. The data is then read by taking the difference between the signals generated from the reference and data pixels.
U.S. Pat. No. 5,510,912 by Blaum et al. and U.S. Pat. No. 5,727,226 by Blaum et al. disclose methods for modulating data so that xe2x80x9conxe2x80x9d channel bits and xe2x80x9coffxe2x80x9d channel bits are distributed approximately uniformly throughout the page. Finally, U.S. Pat. No. 5,808,998 by Curtis et al. gives a method for encoding data that reduces the length of runs of same-state channel bits.
However, in all of these methods the number of xe2x80x9conxe2x80x9d channel bits is still approximately equal to the number of xe2x80x9coffxe2x80x9d channel bits, so the problem of unwanted scattering of radiation beams during data storage and retrieval is not mitigated.
Briefly and in general terms, the present invention provides a system and method for holographic data storage and retrieval having improved signal-to-noise ratios. With the present invention, digital data pages comprise sparse modulation codes, which have a smaller number of xe2x80x9conxe2x80x9d channel bits than xe2x80x9coffxe2x80x9d channel bits on average.
In a presently preferred embodiment, by way of example and not necessarily by way of limitation, sparse modulation encoding for data storage is accomplished by dividing a bit stream of binary data into data groups, encoding these data groups as binary patterns, and storing the binary patterns as data pages in a holographic data storage medium. Each binary pattern comprises xe2x80x9conxe2x80x9d channel bits and xe2x80x9coffxe2x80x9d channel bits. Generally, xe2x80x9conxe2x80x9d channel bits are recorded when a recording signal originating from a signal beam is present, and xe2x80x9coffxe2x80x9d channel bits are recorded when the recording signal representing that bit is absent. Upon data retrieval, the binary patterns are converted to the data groups using lookup tables or conversion algorithms. Channel bits are represented by pixels of a page, and a number of pages are multiplexed in a single volume of the storage medium.
Generally, accumulated light exposure, or accumulated index of refraction perturbation, or both, due to recorded xe2x80x9conxe2x80x9d channel bits decreases the signal-to-noise ratios for reading and writing data. For a system with a given dynamic range available for signal index perturbation, sparse modulation codes can reduce the accumulated light exposure, or the accumulated noise index of refraction perturbation, or both, thereby increasing the signal-to-noise ratios. For a given signal-to-noise ratio, the storage capacity of the storage medium is in general increased by the sparse modulation codes.
In one embodiment of the present invention, a lookup table is used to relate the data groups to the binary patterns. The kth binary pattern comprises nk channel bits, mk of which are xe2x80x9conxe2x80x9d. The kth data group comprises bk bits, and to ensure that the kth binary pattern contains at least as much information as the kth data group, nk-choose-mkxe2x89xa72bk. A sparseness is defined as the average ratio of nk/mk. In the present modulation codes, the sparseness is greater than 2. In some embodiments, standard error-correction encoding and data interleaving techniques are used to process the binary data before it is modulation encoded.
To retrieve data that has been stored holographically, an address beam illuminates the storage medium. The address beam causes an image beam to emerge from the storage medium. Light signals from the image beam are detected. These detected signals are processed if necessary, and stored as a data array. Data sectors comprising a plurality of array elements are identified; the kth data sector has nk array elements and corresponds to the kth binary pattern. In the preferred embodiment, the mk largest array elements of the kth data sector are identified as xe2x80x9conxe2x80x9d channel bits, and the remaining nkxe2x88x92mk array element values are identified as xe2x80x9coffxe2x80x9d channel bits; the kth binary pattern is thereby recovered. Once the data sectors are converted to binary patterns, the binary patterns are converted to data groups of binary information.
Frequently, a diffraction efficiency of a holographic storage medium varies inversely with the square of the number of pages multiplexed. For such storage media, by example, sparse coding results in an increase in the number of pages that can be recorded. Sparse modulation codes can be chosen to have a sparseness that maximizes the storage capacity of these storage media.